<?php

include './database/koneksi/Koneksi.php';
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 * Description of Pengguna
 *
 * @author BAGUS
 */
class Pengguna {

    //put your code here
    var $id_Pengguna;
    var $password;
    var $nama_Pengguna;
    var $email_Pengguna;
    var $no_Telp;
    var $pin_BB;
    var $alamat;
    var $tgl_Lahir;
    var $jenis_Kelamin;
    var $foto;
    var $id_Kabupaten;
    var $key_Confirm;
    var $nameFalse = array('1', '2', '3', '4', '5', '6', '7', '8', '9', '0', '!', '@', '#', '$', '%', '^', '&', '*', '(', ')');
    var $numberTrue = array('1', '2', '3', '4', '5', '6', '7', '8', '9', '0');

    public function setKey_Confirm($key_Confirm) {
        $this->key_Confirm = $key_Confirm;
    }

    public function getKey_Confirm() {
        return $this->key_Confirm;
    }

    public function getPin_BB() {
        return $this->pin_BB;
    }

    public function setPin_BB($pin_BB) {
        $this->pin_BB = $pin_BB;
    }

    public function getNama() {
        return $this->nama_Pengguna;
    }

    public function setNama_Pengguna($nama_Pengguna) {
        $this->nama_Pengguna = $nama_Pengguna;
    }

    public function getEmail_Pengguna() {
        return $this->email_Pengguna;
    }

    public function setEmail_Pengguna($email_Pengguna) {
        $this->email_Pengguna = $email_Pengguna;
    }

    public function getPassword() {
        return $this->password;
    }

    public function setPassword($password) {
        $this->password = $password;
    }

    public function getAlamat() {
        return $this->alamat;
    }

    public function setAlamat($alamat) {
        $this->alamat = $alamat;
    }

    public function getTgl_Lahir() {
        return $this->tgl_Lahir;
    }

    public function setTgl_Lahir($tgl_Lahir) {
        $this->tgl_Lahir = $tgl_Lahir;
    }

    public function getJenis_Kelamin() {
        return $this->jenis_Kelamin;
    }

    public function setJenis_Kelamin($jenis_Kelamin) {
        $this->jenis_Kelamin = $jenis_Kelamin;
    }

    public function getNo_Telp() {
        return $this->no_Telp;
    }

    public function setNo_Telp($no_Telp) {
        $this->no_Telp = $no_Telp;
    }

    public function getFoto() {
        return $this->foto;
    }

    public function setFoto($foto) {
        $this->foto = $foto;
    }

    public function getId_Kabupaten() {
        return $this->id_Kabupaten;
    }

    public function setId_Kabupaten($id_Kabupaten) {
        $this->id_Kabupaten = $id_Kabupaten;
    }

    public function ID_Pengguna() {
        $id = null;
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $hari = date('d');
        $bulan = date('m');
        $tahun = date('Y');
        $substring = substr($tahun, 2);
        $kodeTanggal = $hari . $bulan . $substring;
        $rs1 = mysql_query("select * from pengguna where id_pengguna like '%" . $kodeTanggal . "%' order by id_pengguna");

        if (!$rs1) {
            echo 'Could not run query: ' . mysql_error();
            exit;
        }

        while ($row = mysql_fetch_array($rs1)) {
            $id = $row["id_pengguna"];
        }
        if ($id != null) {
            $id2 = intval($id);
            $id2++;
            $id = intval($id2);
        } else {
            $id = "4" . $kodeTanggal . "0001";
        }
        return $id;
    }

    public function insertPengguna() {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $query = "insert into pengguna values('" . mysql_real_escape_string($this->ID_Pengguna()) . "','"
                . mysql_real_escape_string($this->getPassword()) . "','"
                . mysql_real_escape_string($this->getNama()) . "','"
                . mysql_real_escape_string($this->getEmail_Pengguna()) . "','"
                . mysql_real_escape_string($this->getNo_Telp()) . "','"
                . mysql_real_escape_string($this->getPin_BB()) . "','"
                . mysql_real_escape_string($this->getAlamat()) . "','"
                . mysql_real_escape_string($this->getTgl_Lahir()) . "','"
                . mysql_real_escape_string($this->getJenis_Kelamin()) . "','"
                . mysql_real_escape_string($this->getFoto()) . "','"
                . mysql_real_escape_string($this->getId_Kabupaten()) . "','"
                . mysql_real_escape_string($this->getKey_Confirm()) . "')";
        if (mysql_query($query)) {
            return "success, account saved";
        } else {
            return "error, " . mysql_error();
        }
    }

    public function checkLogInPengguna($email, $password) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $result = mysql_query("select * from pengguna where email_pengguna = '" . mysql_real_escape_string($email) . "'"
                . " and password = '" . mysql_real_escape_string($password) . "'"
                . " and key_confirm = 'NULL'");
        if (!$result) {
            echo 'Could not run query: ' . mysql_error();
            exit;
        }

        while ($row = mysql_fetch_array($result)) {
            $cek = $row["id_pengguna"];
        }

        if ($cek != null) {
            return 'sukses';
        } else {
            return 'kosong';
        }
    }

    public function isNameValid($name) {
        $karakter = null;
        for ($i = 0; $i < strlen($name); $i++) {
            $karakter = $name{$i};
            for ($j = 0; $j < sizeof($this->nameFalse); $j++) {
                if ($karakter == $this->nameFalse[$j]) {
                    return false;
                }
            }
        }
        return true;
    }

    public function isNumberValid($number) {
        $karakter = null;
        $cek = 0;
        for ($i = 0; $i < strlen($number); $i++) {
            $karakter = $number{$i};
            for ($j = 0; $j < sizeof($this->numberTrue); $j++) {
                if ($karakter == $this->numberTrue[$j]) {
                    $cek++;
                }
            }
        }
        if ($cek != sizeof($this->numberTrue)) {
            return false;
        }
        return true;
    }

    public function isEmailValid($email) {
        $karakter = null;
        for ($i = 0; $i < strlen($email); $i++) {
            $karakter = $email{$i};
            if ($karakter == '@') {
                return true;
            }
        }
        return false;
    }

    public function isEmailAvailable($email) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $rs = mysql_query("select * from pengguna where email_pengguna='$email'");
        if (!$rs) {
            echo 'Could not run query: ' . mysql_error();
            exit;
        }
        while ($row = mysql_fetch_array($rs)) {
            $email1 = $row["email_pengguna"];
        }
        if ($email1 == "") {
            return true;
        } else {
            return false;
        }
    }

    public function updateKey_Confirm($key_Confirm) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $rs = mysql_query("update pengguna set key_confirm = 'NULL' where key_confirm='"
                . mysql_real_escape_string($key_Confirm) . "'");
        if (!$rs) {
            return false;
        } else {
            return true;
        }
    }

    public function updateID_kabupaten($idKabupaten, $email) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $rs = mysql_query("update pengguna set id_kabupaten = '" . mysql_real_escape_string($idKabupaten) . "' where email_pengguna ='"
                . mysql_real_escape_string($email) . "'");
        if (!$rs) {
            return 'error' . mysql_error();
        } else {
            return 'sukses';
        }
    }

    public function updateAlamat($alamat, $email) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $rs = mysql_query("update pengguna set alamat = '" . mysql_real_escape_string($alamat) . "' where email_pengguna ='"
                . mysql_real_escape_string($email) . "'");
        if (!$rs) {
            return 'error' . mysql_error();
        } else {
            return 'sukses';
        }
    }

    public function updateNo_Telp($telepon, $email) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $rs = mysql_query("update pengguna set no_telp = '" . mysql_real_escape_string($telepon) . "' where email_pengguna ='"
                . mysql_real_escape_string($email) . "'");
        if (!$rs) {
            return 'error' . mysql_error();
        } else {
            return 'sukses';
        }
    }
    
    public function updateNamaPengguna($namapengguna, $email) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $rs = mysql_query("update pengguna set nama_pengguna = '" . mysql_real_escape_string($namapengguna) . "' where email_pengguna ='"
                . mysql_real_escape_string($email) . "'");
        if (!$rs) {
            return 'error' . mysql_error();
        } else {
            return 'sukses';
        }
    }
    
    public function updatePassword($password, $email) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $rs = mysql_query("update pengguna set password = '" . mysql_real_escape_string($password) . "' where email_pengguna ='"
                . mysql_real_escape_string($email) . "'");
        if (!$rs) {
            return 'error' . mysql_error();
        } else {
            return 'sukses';
        }
    }
    
    public function updatePinBB($pin_BB, $email) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $rs = mysql_query("update pengguna set pin_BB = '" . mysql_real_escape_string($pin_BB) . "' where email_pengguna ='"
                . mysql_real_escape_string($email) . "'");
        if (!$rs) {
            return 'error' . mysql_error();
        } else {
            return 'sukses';
        }
    }
    
    public function updateTglLahir($tgl_lahir, $email) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $rs = mysql_query("update pengguna set tgl_lahir = '" . mysql_real_escape_string($tgl_lahir) . "' where email_pengguna ='"
                . mysql_real_escape_string($email) . "'");
        if (!$rs) {
            return 'error' . mysql_error();
        } else {
            return 'sukses';
        }
    }
    
    public function updateJenisKelamin($jenis_kelamin, $email) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $rs = mysql_query("update pengguna set jenis_kelamin = '" . mysql_real_escape_string($jenis_kelamin) . "' where email_pengguna ='"
                . mysql_real_escape_string($email) . "'");
        if (!$rs) {
            return 'error' . mysql_error();
        } else {
            return 'sukses';
        }
    }
    
    public function updateFoto($foto, $email) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $rs = mysql_query("update pengguna set foto = '" . mysql_real_escape_string($foto) . "' where email_pengguna ='"
                . mysql_real_escape_string($email) . "'");
        if (!$rs) {
            return 'error' . mysql_error();
        } else {
            return 'sukses';
        }
    }

    public function format_Tanggal($tanggal) {
        $year = substr($tanggal, 0, 4);
        $month = substr($tanggal, 5, 7);
        $day = substr($tanggal, 8, 10);
        $tanggal_baru = $day . "-" . $month . "-" . $year;
        return $tanggal_baru;
    }

    function randomPassword() {
        $alphabet = "abcdefghijklmnopqrstuwxyzABCDEFGHIJKLMNOPQRSTUWXYZ0123456789";
        $pass = array();
        $alphaLength = strlen($alphabet) - 1;
        for ($i = 0; $i < 8; $i++) {
            $n = rand(0, $alphaLength);
            $pass[] = $alphabet[$n];
        }
        return implode($pass);
    }

    public function getEmail_With_Key_Confirm($key_Confirm) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $rs = mysql_query("select email_pengguna from pengguna where key_confirm='"
                . mysql_real_escape_string($key_Confirm) . "'");
        if (!$rs) {
            echo 'Could not run query: ' . mysql_error();
            exit;
        }
        while ($row = mysql_fetch_array($rs)) {
            $email1 = $row["email_pengguna"];
        }
        return $email1;
    }

    public function cekKabupatenPengguna($email) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $rs = mysql_query("select * from pengguna where email_pengguna ='"
                . mysql_real_escape_string($email) . "' "
                . "and id_kabupaten ='0000'");
        if (!$rs) {
            echo 'Could not run query: ' . mysql_error();
            exit;
        }
        while ($row = mysql_fetch_array($rs)) {
            $cek = $row["email_pengguna"];
        }
        if ($cek == "") {
            return 'sudah';
        } else {
            return 'belum';
        }
    }

    public function cekKabupaten($namakabupaten) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $rs = mysql_query("select * from kabupaten where nama_kabupaten ='"
                . mysql_real_escape_string($namakabupaten) . "'");
        if (!$rs) {
            echo 'Could not run query: ' . mysql_error();
            exit;
        }
        while ($row = mysql_fetch_array($rs)) {
            $cek = $row["id_kabupaten"];
        }
        if ($cek == "") {
            return 'tidak';
        } else {
            return $cek;
        }
    }

    public function tampilKabupatenPengguna($email) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        //ambil id_kabupaten
        $rs = mysql_query("select * from pengguna where email_pengguna ='"
                . mysql_real_escape_string($email) . "'");
        if (!$rs) {
            echo 'Could not run query: ' . mysql_error();
            exit;
        }
        while ($row = mysql_fetch_array($rs)) {
            $cek = $row["id_kabupaten"];
        }
        //ambil nama_kabupaten
        $rs2 = mysql_query("select * from kabupaten where id_kabupaten ='"
                . mysql_real_escape_string($cek) . "'");
        if (!$rs2) {
            echo 'Could not run query: ' . mysql_error();
            exit;
        }
        while ($row = mysql_fetch_array($rs2)) {
            $hasil = $row["nama_kabupaten"];
        }
        return $hasil;
    }

    public function tampiltelpPengguna($email) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $rs = mysql_query("select * from pengguna where email_pengguna ='"
                . mysql_real_escape_string($email) . "'");
        if (!$rs) {
            echo 'Could not run query: ' . mysql_error();
            exit;
        }
        while ($row = mysql_fetch_array($rs)) {
            $cek = $row["no_telp"];
        }
        return $cek;
    }

    public function tampilAlamatPengguna($email) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $rs = mysql_query("select * from pengguna where email_pengguna ='"
                . mysql_real_escape_string($email) . "'");
        if (!$rs) {
            echo 'Could not run query: ' . mysql_error();
            exit;
        }
        while ($row = mysql_fetch_array($rs)) {
            $cek = $row["alamat"];
        }
        return $cek;
    }

    public function tampilNamaPengguna($email) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $rs = mysql_query("select * from pengguna where email_pengguna ='"
                . mysql_real_escape_string($email) . "'");
        if (!$rs) {
            echo 'Could not run query: ' . mysql_error();
            exit;
        }
        while ($row = mysql_fetch_array($rs)) {
            $cek = $row["nama_pengguna"];
        }
        return $cek;
    }

    public function tampilPassword($email) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $rs = mysql_query("select * from pengguna where email_pengguna ='"
                . mysql_real_escape_string($email) . "'");
        if (!$rs) {
            echo 'Could not run query: ' . mysql_error();
            exit;
        }
        while ($row = mysql_fetch_array($rs)) {
            $cek = $row["password"];
        }
        return $cek;
    }

    public function tampilPinBB($email) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $rs = mysql_query("select * from pengguna where email_pengguna ='"
                . mysql_real_escape_string($email) . "'");
        if (!$rs) {
            echo 'Could not run query: ' . mysql_error();
            exit;
        }
        while ($row = mysql_fetch_array($rs)) {
            $cek = $row["pin_BB"];
        }
        return $cek;
    }

    public function tampilTglLahir($email) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $rs = mysql_query("select * from pengguna where email_pengguna ='"
                . mysql_real_escape_string($email) . "'");
        if (!$rs) {
            echo 'Could not run query: ' . mysql_error();
            exit;
        }
        while ($row = mysql_fetch_array($rs)) {
            $cek = $row["tgl_lahir"];
        }
        return $cek;
    }

    public function tampilJenisKelamin($email) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $rs = mysql_query("select * from pengguna where email_pengguna ='"
                . mysql_real_escape_string($email) . "'");
        if (!$rs) {
            echo 'Could not run query: ' . mysql_error();
            exit;
        }
        while ($row = mysql_fetch_array($rs)) {
            $cek = $row["jenis_kelamin"];
        }
        return $cek;
    }

    public function tampilFoto($email) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $rs = mysql_query("select * from pengguna where email_pengguna ='"
                . mysql_real_escape_string($email) . "'");
        if (!$rs) {
            echo 'Could not run query: ' . mysql_error();
            exit;
        }
        while ($row = mysql_fetch_array($rs)) {
            $cek = $row["foto"];
        }
        return $cek;
    }

    public function getIDKabupaten($namakabupaten) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $rs = mysql_query("select id_kabupaten from kabupaten where nama_kabupaten ='"
                . mysql_real_escape_string($namakabupaten) . "'");
        if (!$rs) {
            echo 'Could not run query: ' . mysql_error();
            exit;
        }
        while ($row = mysql_fetch_array($rs)) {
            $result = $row["id_kabupaten"];
        }
        if ($result == "") {
            return 'tidak';
        } else {
            return $result;
        }
    }

    public function getIDFromEmail($email) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $rs = mysql_query("select id_pengguna from pengguna where email_pengguna ='"
                . mysql_real_escape_string($email) . "'");
        if (!$rs) {
            echo 'Could not run query: ' . mysql_error();
            exit;
        }
        while ($row = mysql_fetch_array($rs)) {
            $result = $row["id_pengguna"];
        }
        if ($result == "") {
            return 'email tidak ada';
        } else {
            return $result;
        }
    }
    
    public function getIDProvinsi($id_kabupaten) {
        $koneksi = new Koneksi();
        $koneksi->koneksiDB();
        $rs = mysql_query("select id_provinsi from kabupaten where id_kabupaten ='"
                . mysql_real_escape_string($id_kabupaten) . "'");
        if (!$rs) {
            echo 'Could not run query: ' . mysql_error();
            exit;
        }
        while ($row = mysql_fetch_array($rs)) {
            $result = $row["id_provinsi"];
        }
        if ($result == "") {
            return 'id provinsi tidak ada';
        } else {
            return $result;
        }
    }

}
